package com.grm.sys.mapper;

import com.grm.sys.model.SysDept;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysDeptMapper {
    List<SysDept> list();

    SysDept queryById(Long id);

    List<SysDept> queryByIds(@Param("ids") List<String> ids);

    SysDept queryByParentIdAndName(@Param("parentId")Long parentId, @Param("name")String name);

    void add(SysDept sysDept);

    void update(SysDept sysDept);

    Long queryParentIdById(Long parentId);

    void deleteById(Long id);

    /**
     * 递归获取到id的部门的所有子部门，包括它本身
     */
    List<SysDept> queryAllChildren(@Param("ids")List<Long> ids);

    List<SysDept> queryParentDeptList(@Param("id")Long id);
}
